package org.schrag.java.jbgl.framework;
import java.util.Date;

/**
 * @author Florian Schrag
 *
 */
public interface IEvent {
	/**
	 * Executes the event.
	 */
	public void execute();
	
	/**
	 * @return <b>true</b> if the event as an associated Time when to run.
	 */
	public boolean isTimed();
	/**
	 * @return the date when the Event has to be executed
	 */
	public Date getTimer();
	
	/**
	 * 
	 * @return Ordered List with all the affected Values
	 */
	public java.util.List<IValue> getAffectedValues();
}
